#ifndef GRASP_H
#define GRASP_H

#include "SolucaoGRASPSTS.h"
#include <sys/time.h>

class GRASP{
	private:
		int tamSolucao;
		double alpha;
	public:
		SolucaoGRASPSTS *s;
		GRASP(int tamanhoSolucao, double a){
			this->alpha = a;
			this->tamSolucao = tamanhoSolucao;
			this->s = NULL;
		}
		SolucaoGRASPSTS *construcao();
		SolucaoGRASPSTS *buscaLocal(SolucaoGRASPSTS *sol);
		SolucaoGRASPSTS *ILS(SolucaoGRASPSTS *sbl);
		SolucaoGRASPSTS *descida(SolucaoGRASPSTS *sbl);
		void start(int GRASPmax);
		timeval tempoAntes;
		timeval tempoDepois;
		int melhorIter;
};

#endif
